// samsting : this file is auto create.

#include "Rds/2014-08-15/DescribeDBInstancePerformanceResponse.h"

namespace aliyun { namespace Rds {

DescribeDBInstancePerformanceResponse::DescribeDBInstancePerformanceResponse() {
}

const string& DescribeDBInstancePerformanceResponse::PerformanceKey::PerformanceValue::GetValue(void) const {
  return Value_;
}

const string& DescribeDBInstancePerformanceResponse::PerformanceKey::PerformanceValue::GetDate(void) const {
  return Date_;
}

const std::vector<DescribeDBInstancePerformanceResponse::PerformanceKey::PerformanceValue>& DescribeDBInstancePerformanceResponse::PerformanceKey::GetValues(void) const {
  return Values_;
}

const string& DescribeDBInstancePerformanceResponse::PerformanceKey::GetKey(void) const {
  return Key_;
}

const string& DescribeDBInstancePerformanceResponse::PerformanceKey::GetUnit(void) const {
  return Unit_;
}

const string& DescribeDBInstancePerformanceResponse::PerformanceKey::GetValueFormat(void) const {
  return ValueFormat_;
}

const std::vector<DescribeDBInstancePerformanceResponse::PerformanceKey>& DescribeDBInstancePerformanceResponse::GetPerformanceKeys(void) const {
  return PerformanceKeys_;
}

const string& DescribeDBInstancePerformanceResponse::GetDBInstanceId(void) const {
  return DBInstanceId_;
}

const string& DescribeDBInstancePerformanceResponse::GetEngine(void) const {
  return Engine_;
}

const string& DescribeDBInstancePerformanceResponse::GetStartTime(void) const {
  return StartTime_;
}

const string& DescribeDBInstancePerformanceResponse::GetEndTime(void) const {
  return EndTime_;
}

const char* DescribeDBInstancePerformanceResponse::BaseKey(void) {
  return "DescribeDBInstancePerformanceResponse";
}

void DescribeDBInstancePerformanceResponse::UnmarshallerMap(std::map<string, string>& response_map) {
  int PerformanceKeys__length = 0;
  UnmarshallerInt(PerformanceKeys__length, response_map, "DescribeDBInstancePerformanceResponse.PerformanceKeys.Length");
  if(PerformanceKeys__length >= 0) {
    PerformanceKeys_.resize(PerformanceKeys__length);
    for(int i1 = 0; i1 < PerformanceKeys__length; i1++) {
      int PerformanceKeys_i1_Values__length = 0;
      UnmarshallerInt(PerformanceKeys_i1_Values__length, response_map, "DescribeDBInstancePerformanceResponse.PerformanceKeys[+"+string_ValueOfInt(i1)+"].Values.Length");
      if(PerformanceKeys_i1_Values__length >= 0) {
        PerformanceKeys_[i1].Values_.resize(PerformanceKeys_i1_Values__length);
        for(int i2 = 0; i2 < PerformanceKeys_i1_Values__length; i2++) {
          UnmarshallerString(PerformanceKeys_[i1].Values_[i2].Value_, response_map, "DescribeDBInstancePerformanceResponse.PerformanceKeys[+"+string_ValueOfInt(i1)+"].Values["+string_ValueOfInt(i2)+"].Value");
          UnmarshallerString(PerformanceKeys_[i1].Values_[i2].Date_, response_map, "DescribeDBInstancePerformanceResponse.PerformanceKeys[+"+string_ValueOfInt(i1)+"].Values["+string_ValueOfInt(i2)+"].Date");
        } // for(int i2 = 0; i2 < PerformanceKeys_i1_Values__length; i2++) {
      } // if(PerformanceKeys_i1_Values__length >= 0) {

      UnmarshallerString(PerformanceKeys_[i1].Key_, response_map, "DescribeDBInstancePerformanceResponse.PerformanceKeys["+string_ValueOfInt(i1)+"].Key");
      UnmarshallerString(PerformanceKeys_[i1].Unit_, response_map, "DescribeDBInstancePerformanceResponse.PerformanceKeys["+string_ValueOfInt(i1)+"].Unit");
      UnmarshallerString(PerformanceKeys_[i1].ValueFormat_, response_map, "DescribeDBInstancePerformanceResponse.PerformanceKeys["+string_ValueOfInt(i1)+"].ValueFormat");
    } // for(int i1 = 0; i1 < PerformanceKeys__length; i1++) {
  } // if(PerformanceKeys__length >= 0) {

  UnmarshallerString(DBInstanceId_, response_map, "DescribeDBInstancePerformanceResponse.DBInstanceId");
  UnmarshallerString(Engine_, response_map, "DescribeDBInstancePerformanceResponse.Engine");
  UnmarshallerString(StartTime_, response_map, "DescribeDBInstancePerformanceResponse.StartTime");
  UnmarshallerString(EndTime_, response_map, "DescribeDBInstancePerformanceResponse.EndTime");
}


} } // namespace aliyun { namespace Rds {

// end of file 
